package it.asvp.asvp_portal.service.services;

import it.asvp.asvp_portal.asvp_util.enumerative.RoleName;
import it.asvp.asvp_portal.data.entity.member.Member;
import it.asvp.asvp_portal.data.entity.member.MemberAccount;

public interface MemberService {
	
	public void createMember(Long idCurrentAccount,Member transientMember,MemberAccount transientAccount,RoleName roleName) throws Exception;
	
	public void updateMember(Long idCurrentAccount,Long idMemberToUpdate,Member newMemberData) throws Exception;
	
	public void deleteMember(Long idCurrentAccount,Long idMemberToDelete) throws Exception;

	public Member getMember(Long idCurrentAccount,Long idMemberToRead) throws Exception;

	public Member getMemberById(Long id) throws Exception;
	
	public Member getMemberByEmail(String email) throws Exception;

}
